#include <iostream>
#include <list> //双向链表


int main()
{
    std::list<int> l;
    l.push_back(1);
    l.push_front(2);

    //l[1];list没有重载[]
    //l.begin() + 3;没有重载+
    // auto ite = l.begin();
    // ite++;
    // ite--;

    // for(auto i = l.begin();i !=l.end();i++)
    // {
    //     std::cout<<*i<<" ";
    // }
    // std::cout<<std::endl;

    for(auto ite = l.begin();ite != l.end();)
    {
        if(*ite == 2)
        {
            ite = l.erase(ite);
        }
        else
        {
            ite++;
        }
    }
    return 0;
}